<?xml version="1.0" encoding="UTF-8"?><html xmlns="http://www.w3.org/1999/xhtml">
  <head>
  <meta content="text/html; charset=UTF-8" http-equiv="content-type"/>
  <title>UML/BPMN Metamodel</title>
  <meta content="Document Publisher, www.modeliosoft.com/" name="generator"/>
	<link href="docp-print.css" media="print" rel="stylesheet" type="text/css"/>
	<script src="scripts/browser.js" type="text/javascript"> </script>
  <link href="default.css" media="screen" rel="stylesheet" type="text/css"/></head>
  <body>
        <div id="container">        
            <div id="content">          
                <div id="header">            
 					<div id="logo"><img src="img/logo.png"/></div>
                    <h1 class="documentTitle">UML/BPMN Metamodel</h1>
                    <h2 class="documentType"> </h2>            
               </div>            
               <div id="sidebar"><div><div class="sidePanel" id="infoArea"><h4 class="sideTitle">INFORMATIONS</h4><ul id="docProps"><li class="property">Status</li><li class="value">Release</li><li class="property">Category</li><li class="value">Modelio user guide</li><li class="property">Version</li><li class="value">2.3.00 (Modelio 5.4)</li><li class="property">Title</li><li class="value">UML/BPMN Metamodel</li><li class="property">Author</li><li class="value">Softeam</li><li class="property">Subject</li><li class="value"> </li></ul></div><div class="sidePanel" id="shortcutArea"><h4 class="sideTitle">SHORTCUTS</h4><ul id="shortcuts"><li><a href="index.html">Home</a></li><li><a href="sitemap.html">Site Map</a></li><li><a href="modelindex.html">Model Index</a></li><li><a href="tableoffigures.html">Table of Figures</a></li></ul></div></div></div>
               <div id="mainArea">
                    <div id="navbar"><ul><li id="prev"><a href="207.html" title="207.html">&lt; Previous</a></li><li id="home"><a href="index.html" title="Site map">Home</a></li><li id="next"><a href="209.html" title="209.html">Next &gt;</a></li></ul></div>
                    <div id="page"><div><a name="#Table 231"><!--anchor--></a><a name="#Table 230"><!--anchor--></a><a name="#Figure 186"><!--anchor--></a><div align="LEFT" class="Titre4" startOnNewPage="true"><a name="_0148033c-0000-0cdd-0000-000000000000"><!--anchor--></a><a name="toc1.3.3.2"><!--anchor--></a><span class="None">Constraint</span></div><div align="LEFT" class="Normal" startOnNewPage="false"><span class="None">A condition or restriction expressed in natural language text or in a machine readable language, for the purposes of declaring some of the semantics of an element.</span></div><div align="LEFT" class="Normal" startOnNewPage="false"><span class="None">Constraints can express restrictions and relationships that cannot be expressed using UML notation. They are particularly useful for stating global conditions or conditions that affect a number of elements. 

Constraints can have predefined names, and can also represent pre-conditions, post-conditions and invariants (pre-defined stereotypes). 

The language specific MDACs (C++, Java) add a specific stereotype for the pre-conditions, post-conditions and invariants expressed in these languages, such as, for example, C++Invariant or JavaPreCondition. 

In Modelio, a Constraint is not made up of anything. It is only  managed by specific copy/transfer rules.</span></div><center><img alt=": Constraint (architecture_autodiagram)" class="Image" height="469.0" src="img/7308af72-3576-44f5-84f5-dbe059a47f65.png" usemap="#7308af72-3576-44f5-84f5-dbe059a47f65" width="239.0"/></center><div align="CENTER" class="Lgende">Figure 186 : Constraint (architecture_autodiagram)</div><map name="7308af72-3576-44f5-84f5-dbe059a47f65"><area alt="DurationConstraint" coords="84,389,194,469" href="161.html#_00d00f24-0000-0fd4-0000-000000000000" name="7308af72-3576-44f5-84f5-dbe059a47f65" shape="rect" title="DurationConstraint"/><area alt="UmlModelElement" coords="87,0,192,80" href="211.html#_0148033c-0000-0ca8-0000-000000000000" name="7308af72-3576-44f5-84f5-dbe059a47f65" shape="rect" title="UmlModelElement"/><area alt="Constraint" coords="39,180,239,289" href="208.html#_0148033c-0000-0cdd-0000-000000000000" name="7308af72-3576-44f5-84f5-dbe059a47f65" shape="rect" title="Constraint"/></map><div id="tableContainer"><table class="ListeclaireAccent1" horizontal="true" tableStyle="ListeclaireAccent1"><caption/><tr class="odd"><th><div align="CENTER" class="Normal" startOnNewPage="false"><span class="None">Attribute</span></div></th><th><div align="CENTER" class="Normal" startOnNewPage="false"><span class="None">Description</span></div></th></tr><tr class="even"><td><div align="LEFT" class="Normal" startOnNewPage="false"><span class="None">string</span><span class="None"> </span><span class="None">BaseClass</span><span class="None"> [</span><span class="None">1</span><span class="None">..</span><span class="None">1</span><span class="None">]</span></div></td><td><div align="LEFT" class="Normal" startOnNewPage="false"><span class="None">MetaClass whose instances can be constrained by the current Constraint.</span></div></td></tr><tr class="odd"><td><div align="LEFT" class="Normal" startOnNewPage="false"><span class="None">string</span><span class="None"> </span><span class="None">Body</span><span class="None"> [</span><span class="None">1</span><span class="None">..</span><span class="None">1</span><span class="None">]</span></div></td><td><div align="LEFT" class="Normal" startOnNewPage="false"><span class="None">If the Constraint is not predefined (for example, ordered), then it is expressed in the body. 

Modelio supports natural language. For every generator (C++, Java) some constraints have a dedicated stereotype (JavaPrecondition, C++Invariant), and are taken into account during code generation.</span></div></td></tr><tr class="even"><td><div align="LEFT" class="Normal" startOnNewPage="false"><span class="None">string</span><span class="None"> </span><span class="None">Language</span><span class="None"> [</span><span class="None">1</span><span class="None">..</span><span class="None">1</span><span class="None">]</span></div></td><td/></tr></table></div><div>
</div><div id="tableContainer"><table class="ListeclaireAccent1" horizontal="true" tableStyle="ListeclaireAccent1"><caption/><tr class="odd"><th><div align="CENTER" class="Normal" startOnNewPage="false"><span class="None">Association</span></div></th><th><div align="CENTER" class="Normal" startOnNewPage="false"><span class="None">Description</span></div></th></tr><tr class="even"><td><div align="LEFT" class="Normal" startOnNewPage="false"><span class="None">ConstrainedElement</span><span class="None"> : </span><a href="211.html#_0148033c-0000-0ca8-0000-000000000000">UmlModelElement</a><span class="None"> [</span><span class="None">0</span><span class="None">..</span><span class="None">*</span><span class="None">]</span></div></td><td><div align="LEFT" class="Normal" startOnNewPage="false"><span class="None">Defines which elements are concerned by the Constraint.</span></div></td></tr></table></div><div>
</div></div></div>
                    <br/>
                    <div class="spacer" id="navbar"><ul><li id="prev"><a href="207.html" title="207.html">&lt; Previous</a></li><li id="home"><a href="index.html" title="Site map">Home</a></li><li id="next"><a href="209.html" title="209.html">Next &gt;</a></li></ul></div>  
					<div id="footer"><p>Document automatically generated by Modelio Document Publisher.<br/><a href="http://www.modeliosoft.com">www.modeliosoft.com</a></p></div>            
                </div>           
            </div>
        </div>
  </body>
</html>